package com.biz.primus.ms.homepage.service;


import com.biz.primus.homepage.enums.CoverClientType;
import com.biz.primus.homepage.vo.*;

import java.util.List;

/**
 * Created by jiangnan on 2017/7/12.
 */
public interface CoverServerService {

    List<CoverRoVo> findAll();

    CoverUpdateVo saveCover(CoverUpdateVo coverUpdateVo);

    CoverRoVo findOne(String coverId);

    void deleteCover(CoverDeleteVo coverUpdateVo);

    /**
     * 获取模板Cover
     * 如果 coverUrl 不为空,则获取指定url的cover
     * @param coverReqVo
     * @param coverClientType
     * @return
     */
    CoverRoVo getCover(CoverReqVo coverReqVo, CoverClientType coverClientType);

    CoverRoVo doClone(CoverWithPrograms coverWithPrograms, String clonedBy);

    List<CoverProviderVo> listCoverProvider();

    CoverTemplateData getCoverProgramData(CoverReqVo coverReqVo, CoverClientType coverClientType);

    /**
     * 获得首页模板数据
     * @param coverTemplateData
     * @param location
     * @return
     */
    List<CoverTemplateData> getElements(CoverTemplateData coverTemplateData, CoverReqVo location);

}
